From: Jeroen van der Heijden Date: Thu, 28 Apr 2022 14:17:25 +0000 (+0200) Subject: Upd test X-Git-Tag: archive/raspbian/2.0.48-1+rpi1^2~6^2^2~9^2~1 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=e6baf6888b39b40f3f111226fa130758110a9c49;p=siridb-server.git Upd test --- diff --git a/itest/run_all.py b/itest/run_all.py index d986de60..2574d600 100644 --- a/itest/run_all.py +++ b/itest/run_all.py @@ -21,7 +21,6 @@ from test_select_ns import TestSelectNano from test_series import TestSeries from test_server import TestServer from test_tags import TestTags -from test_tee import TestTee from test_user import TestUser @@ -46,5 +45,4 @@ if __name__ == '__main__': run_test(TestSeries()) run_test(TestServer()) run_test(TestTags()) - run_test(TestTee()) run_test(TestUser()) diff --git a/itest/test_tee.py b/itest/test_tee.py deleted file mode 100644 index 12c06445..00000000 --- a/itest/test_tee.py +++ /dev/null @@ -1,167 +0,0 @@ -import os -import asyncio -import functools -import random -import time -import math -from testing import Client -from testing import default_test_setup -from testing import gen_data -from testing import gen_points -from testing import gen_series -from testing import InsertError -from testing import PoolError -from testing import QueryError -from testing import run_test -from testing import Series -from testing import Server -from testing import SiriDB -from testing import TestBase -from testing import SiriDBAsyncUnixServer -from testing import parse_args - - -PIPE_NAME = '/tmp/dbtest_tee.sock' - -DATA = { - 'series float': [ - [1471254705, 1.5], - [1471254707, -3.5], - [1471254710, -7.3]], - 'series integer': [ - [1471254705, 5], - [1471254708, -3], - [1471254710, -7]], - 'aggr': [ - [1447249033, 531], [1447249337, 534], - [1447249633, 535], [1447249937, 531], - [1447250249, 532], [1447250549, 537], - [1447250868, 530], [1447251168, 520], - [1447251449, 54], [1447251749, 54], - [1447252049, 513], [1447252349, 537], - [1447252649, 528], [1447252968, 531], - [1447253244, 533], [1447253549, 538], - [1447253849, 534], [1447254149, 532], - [1447254449, 533], [1447254748, 537]], - 'huge': [ - [1471254705, 9223372036854775807], - [1471254706, 9223372036854775806], - [1471254707, 9223372036854775805], - [1471254708, 9223372036854775804]], - 'equal ts': [ - [1471254705, 0], [1471254705, 1], [1471254705, 1], - [1471254707, 0], [1471254707, 1], [1471254708, 0], - ], - 'variance': [ - [1471254705, 2.75], [1471254706, 1.75], [1471254707, 1.25], - [1471254708, 0.25], [1471254709, 0.5], [1471254710, 1.25], - [1471254711, 3.5] - ], - 'pvariance': [ - [1471254705, 0.0], [1471254706, 0.25], [1471254707, 0.25], - [1471254708, 1.25], [1471254709, 1.5], [1471254710, 1.75], - [1471254711, 2.75], [1471254712, 3.25] - ], - 'filter': [ - [1471254705, 5], - [1471254710, -3], - [1471254715, -7], - [1471254720, 7] - ], - 'one': [ - [1471254710, 1] - ], - 'log': [ - [1471254710, 'log line one'], - [1471254712, 'log line two'], - [1471254714, 'another line (three)'], - [1471254716, 'and yet one more'], - ], - # 'special': [ - # [1471254705, 0.1], - # [1471254706, math.nan], - # [1471254707, math.inf], - # [1471254708, -math.inf], - # ] -} - -if os.path.exists(PIPE_NAME): - os.unlink(PIPE_NAME) - - -class TestTee(TestBase): - title = 'Test tee' - - def on_data(self, data): - for k, v in data.items(): - if k not in self._tee_data: - self._tee_data[k] = [] - self._tee_data[k].extend(v) - - @default_test_setup(2) - async def run(self): - self._tee_data = {} - - server = SiriDBAsyncUnixServer(PIPE_NAME, self.on_data) - - await server.create() - - await self.client0.connect() - - await asyncio.sleep(1) - - await self.client0.query( - 'alter servers set tee_pipe_name "{}"'.format(PIPE_NAME)) - - await asyncio.sleep(1) - - self.assertEqual( - await self.client0.insert(DATA), - {'success_msg': 'Successfully inserted 60 point(s).'}) - - self.assertAlmostEqual( - await self.client0.query('select * from "series float"'), - {'series float': DATA['series float']}) - - self.assertEqual( - await self.client0.query('select * from "series integer"'), - {'series integer': DATA['series integer']}) - - self.assertEqual( - await self.client0.query('select * from "log"'), - {'log': DATA['log']}) - - await asyncio.sleep(1) - - self.assertEqual(DATA, self._tee_data) - - await self.db.add_pool(self.server1, sleep=3) - await self.assertIsRunning(self.db, self.client0, timeout=50) - - await self.client1.connect() - - self._tee_data = {} - await self.client0.query('drop series set ignore_threshold true') - - await asyncio.sleep(1) - - await self.client0.query( - 'alter servers set tee_pipe_name "{}"'.format(PIPE_NAME)) - - await asyncio.sleep(1) - - self.assertEqual( - await self.client0.insert(DATA), - {'success_msg': 'Successfully inserted 60 point(s).'}) - - await asyncio.sleep(1) - - self.assertEqual(DATA, self._tee_data) - - self.client0.close() - self.client1.close() - - -if __name__ == '__main__': - parse_args() - run_test(TestTee()) diff --git a/itest/testing/__init__.py b/itest/testing/__init__.py index 3f6cb861..9ce56c32 100644 --- a/itest/testing/__init__.py +++ b/itest/testing/__init__.py @@ -16,7 +16,6 @@ from .testbase import default_test_setup from .testbase import TestBase from .series import Series from .pipe_client import PipeClient as SiriDBAsyncUnixConnection -from .pipe_server import PipeServer as SiriDBAsyncUnixServer from .args import parse_args from .task import Task diff --git a/itest/testing/pipe_server.py b/itest/testing/pipe_server.py index 3d0f2a08..b6be3889 100644 --- a/itest/testing/pipe_server.py +++ b/itest/testing/pipe_server.py @@ -59,25 +59,3 @@ class SiriDBServerProtocol(asyncio.Protocol): else: self._on_package_received(self._data_package.data) self._data_package = None - - -class PipeServer(SiriDBAsyncConnection): - def __init__(self, pipe_name, on_data): - self._pipe_name = pipe_name - self._protocol = None - self._server = None - self._on_data_cb = on_data - - async def create(self, loop=None): - loop = loop or asyncio.get_event_loop() - - self._server = await loop.create_unix_server( - path=self._pipe_name, - protocol_factory=lambda: SiriDBServerProtocol(self._on_data)) - - def _on_data(self, data): - ''' - series names are returned as c strings (0 terminated) - ''' - data = {k.rstrip('\x00'): v for k, v in data.items()} - self._on_data_cb(data)